/**
 * 获取导航栏高度(包括状态栏)
 * @returns {object} 返回导航栏高度信息
 */
export const getNavBarHeight = () => {
	// 状态栏高度
	const statusBarHeight = uni.getSystemInfoSync().statusBarHeight
	let navBarHeight = 0

	// #ifdef MP-WEIXIN
	const menuButtonInfo = uni.getMenuButtonBoundingClientRect()
	// 胶囊按钮高度
	const menuButtonHeight = menuButtonInfo.height
	// 胶囊按钮距顶部距离
	const menuButtonTop = menuButtonInfo.top
	// 导航栏高度 = 胶囊按钮顶部距离 + 胶囊按钮高度 + 固定边距
	navBarHeight = menuButtonTop + menuButtonHeight + 7

	return {
		statusBarHeight, // 状态栏高度
		navBarHeight, // 导航栏总高度(包括状态栏)
		menuButtonHeight, // 胶囊按钮高度
		menuButtonTop // 胶囊按钮顶部距离
	}
	// #endif

	// #ifdef APP-PLUS || H5
	// APP端和H5端导航栏高度固定为44px
	navBarHeight = statusBarHeight + 44

	return {
		statusBarHeight, // 状态栏高度
		navBarHeight // 导航栏总高度(包括状态栏)
	}
	// #endif
}

/**
 * 设置导航栏高度CSS变量
 */
export const setNavBarHeightVar = () => {
	const {
		navBarHeight,
		statusBarHeight
	} = getNavBarHeight()
	
	// #ifdef H5
	document.documentElement.style.setProperty('--status-bar-height', `${statusBarHeight}px`)
	document.documentElement.style.setProperty('--nav-bar-height', `${navBarHeight}px`)
	// #endif
	
	return {
		statusBarHeight,
		navBarHeight
	}
}

/**
 * 跳转富文本内容
 */
export const toRichWeb = (id) => {
	uni.navigateTo({
        url: '/pages/rich/index?type=' + id
    })
}